package model.v2.conf;

import annotation.ShowInfo;
import com.google.gson.annotations.Expose;
import model.MibNode;

import java.util.List;

public class MibModuleComplianceNodeV2 extends MibNode {
    public static class Module{
        public static class Compliance{
            public static class NamedBit {
                public String identifier;
                public int number;

                public NamedBit(String identifier, int number) {
                    this.identifier = identifier;
                    this.number = number;
                }
            }

            @Expose
            public String group;
            @Expose
            public String description;
            @Expose
            public String object;
            @Expose
            public String syntax;
            @Expose
            public String writeSyntax;
            @Expose
            public List<NamedBit> namedBits;
            @Expose
            public String minAccess;
            @Expose
            public List<String> creationRequires;
        }

        @Expose
        public String moduleName;
        @Expose
        public List<String> mandatoryGroups;
        @Expose
        public List<Compliance> compliances;
    }

    @Expose
    @ShowInfo(name = "状态")
    public String status;
    @Expose
    public String reference;
    @Expose
    public List<Module> modules;
}
